Код:
//=============================================================================
// TextEndings
//=============================================================================
var Imported = Imported || {};
Imported.de_TextEndings = true;
/*:
* @plugindesc v1.0 Позволяет устанавливать окончания для слов.
* <de_TextEndings>
* @author dirge
*
* @param Количество возможных полов персонажа
* @desc Запишите количество полов
* Default: 2
* @default 2
*
* @param Id переменной
* @desc Запишите id переменной которая будет отвечать за пол персонажа
* Default: 0
* @default 0
*
* @param Вариант окончания №1
* @desc Запишите окончания через запятую, но не больше чем доступно полов
*
* @param Вариант окончания №2
* @desc Запишите окончания через запятую, но не больше чем доступно полов
*
* @param Вариант окончания №3
* @desc Запишите окончания через запятую, но не больше чем доступно полов
*
* @param Вариант окончания №4
* @desc Запишите окончания через запятую, но не больше чем доступно полов
*
* @param Вариант окончания №5
* @desc Запишите окончания через запятую, но не больше чем доступно полов
*
* @param Вариант окончания №6
* @desc Запишите окончания через запятую, но не больше чем доступно полов
*
* @param Вариант окончания №7
* @desc Запишите окончания через запятую, но не больше чем доступно полов
*
* @param Вариант окончания №8
* @desc Запишите окончания через запятую, но не больше чем доступно полов
*
* @param Вариант окончания №9
* @desc Запишите окончания через запятую, но не больше чем доступно полов
*
* @param Вариант окончания №10
* @desc Запишите окончания через запятую, но не больше чем доступно полов
*
* @help
* --------------------------------------------------------------------------------
* Версия 1.0
* --------------------------------------------------------------------------------
* Плагин позволяет устанавливать окончания словам в текстах через команду
* показать текст, в зависимости от пола главного героя.
* Управлять полом ГГ нужно через переменную, айди которой выставлен
* в настройках плагина. Значения самой переменной устанавливайте
* от 0 и до количества возможных полов персонажа -1, из-за
* отсчета с 0.
* Предварительно заполните варианты окончаний.
* Заполняются они через запятую, но окончаний не должно быть больше
* чем количество полов персонажа, которое определяется в настройках.
* Пример заполнения: -,а
* Для пустого окончания используйте дефис, он автоматически
* заменится на пустое место в тексте. В примере,
* дефис = 0 значению переменной пола персонажа, в свою очередь
* 'a' = 1, итого мы определили окончания для двух вероятных полов
* персонажа.
* Использование в тексте \gr[n]
* где n - номер варианта окончания.
*
*/
(function() {
var parameters = $plugins.filter(function(p) { return p.description.contains('<de_TextEndings>'); })[0].parameters;
var paramGenderNumber = Number(parameters['Количество полов'] || 2);
var paramVariableId = Number(parameters['Id переменной'] || 0);
var paramEndingArray = []
for(var i = 1;i <= 10;i++){
par = String(parameters['Вариант окончания №'+i]);
par = par.replace(/-/g, '')
splitArray = par.split(',');
paramEndingArray[i] = splitArray
}
Window_Base.prototype.convertTextEnding = function(text) {
text = text.replace(/\gr\[(\d+)\]/gi, function() {
for(var i = 0;i<paramGenderNumber;i++){
if ($gameVariables.value(paramVariableId)==i){
return paramEndingArray[parseInt(arguments[1])][i]
break
}
}
}.bind(this));
return text;
};
Window_Base_convertEscapeCharacters_Alias = Window_Base.prototype.convertEscapeCharacters;
Window_Base.prototype.convertEscapeCharacters = function(text) {
text = Window_Base_convertEscapeCharacters_Alias.call(this, text);
text = this.convertTextEnding(text);
return text;
};
})();
Социальные закладки